group { name: "e/modules/start/main";
   parts {
      part { name: "arrow_base"; type: RECT;
         description { state: "default" 0.0;
            color_class: "/fg/normal/gadgets/start";
         }
         description { state: "active" 0.0;
            inherit: "default" 0.0;
            color_class: "/fg/selected/gadgets/start";
         }
      }
      part { name: "arrow";
         clip_to: "arrow_base";
         description { state: "default" 0.0;
            image.normal: "i-arrow-u";
            rel1.relative: (5/40) (5/40);
            rel2.relative: (35/40) (35/40);
         }
         description { state: "down" 0.0;
            inherit: "default" 0.0;
            image.normal: "i-arrow-d";
         }
         description { state: "left" 0.0;
            inherit: "default" 0.0;
            image.normal: "i-arrow-l";
         }
         description { state: "right" 0.0;
            inherit: "default" 0.0;
            image.normal: "i-arrow-r";
         }
      }
      part { name: "events"; type: RECT;
         description { state: "default" 0.0;
            color: 0 0 0 0; // no cc
         }
      }
   }
   programs {
      program { signal: "e,state,focused"; source: "e";
         action: STATE_SET "active" 0.0;
         target: "arrow_base";
      }
      program { signal: "e,state,unfocused"; source: "e";
         action: STATE_SET "default" 0.0;
         target: "arrow_base";
      }
#define ORIENT_SATE(_ORIENT, _STATE) \
      program { \
         signal: "e,state,orientation,"_ORIENT; source: "e"; \
         action: STATE_SET _STATE 0.0; \
         target: "arrow"; \
      }
      ORIENT_SATE("top", "down")
      ORIENT_SATE("top_left", "down")
      ORIENT_SATE("top_right", "down")
      ORIENT_SATE("bottom", "default")
      ORIENT_SATE("bottom_left", "default")
      ORIENT_SATE("bottom_right", "default")
      ORIENT_SATE("left", "right")
      ORIENT_SATE("left_top", "right")
      ORIENT_SATE("left_bottom", "right")
      ORIENT_SATE("right", "left")
      ORIENT_SATE("right_top", "left")
      ORIENT_SATE("right_bottom", "left")
#undef ORIENT_SATE
   }
}
